﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace DO.Domain.Repositories
{
    public interface IRepository<TEntity>
    {
        #region CRUD operations

        TEntity Save(TEntity instance);
        void Update(TEntity instance);
        void Delete(TEntity instance);

        #endregion

        #region Retrieval Operations

        TEntity GetByIdentity(long identity);
        IQueryable<TEntity> FindAll();

        #endregion
    }
}
